package model.recipe.dao;

import java.util.List;

import model.recipe.dto.RecipeCmtDto;
import common.SearchDto;
import model.recipe.dto.RecipeDto;
import model.recipe.dto.StepDto;

public interface RecipeDao {

	List<RecipeDto> recipeList(String search_option, String search, int start, int end);

	List<String> callTypeList();

	List<String> callIngredientList();

	List<Integer> callTimeList();

	List<RecipeDto> myListDate(String userid);

	List<RecipeDto> myListRate(String userid);
	
	int maxRecipeIdx();

	void recipeInsert(RecipeDto dto);

	void stepInsert(StepDto stepDto);

	RecipeDto recipeDetail(int idx);

	List<StepDto> stepDetail(int idx);

	void recipeHitUp(int idx);

	void recipeUpdate(RecipeDto recipeDto);

	void stepUpdate(StepDto stepDto);

	void recipeDelete(int idx);

	void stepDelete(StepDto stepDto);

	int recipeCount(String search_option, String search);

	List<RecipeDto> topRecipeList(SearchDto search);

	List<RecipeDto> myListRateAll(String userid);

	RecipeDto recipeInfo(int recipe_idx);

	List<RecipeCmtDto> recipeCmtList(int idx);
	
	void recipeCmtInsert(RecipeCmtDto dto);

	void recipeCmtDelete(int cmtIdx);
	
	int stepCount(int idx);
	
}
